//功能管理
/**
 * 重置快开索引
 */
export const resetFeatures = (records) => {
  records.forEach((record) => {
    updateFeature(record);
  });
  ElMessage.success("快开索引重置成功");
};

/**
 * 更新标签对应的功能，以便在utools搜索界面可以直接检索到
 * @param {Object} record  一条文件收藏记录
 */
export const updateFeature = ({ path, tags, name, icon } = record) => {
  // 先删除功能再根据tags重新创建功能
  utools.removeFeature(path);
  // 如果没有标签则不创建功能
  if (!tags || tags.length === 0) {
    return;
  }
  // 添加功能
  utools.setFeature({
    code: path,
    explain: `打开文件：${name}`,
    icon: icon,
    platform: ["win32", "darwin", "linux"],
    // 不这样写会出现无法被克隆的异常
    cmds: [...tags],
  });
};

/**
 * 删除标签对应的功能
 * @param {Object} record 一条文件收藏记录
 */
export const removeFeature = ({ path } = record) => {
  utools.removeFeature(path);
};
